When controlling a movable object like robots, there are essentially two known methods regarding the motion generation: planning and reactive control. The skilled person is well familiar with these two concepts for motion control, see e.g. Bekey.
The planning is basically to plan or schedule optimal motions from the current to the future state. It takes some costs to compute overall motions and therefore it is difficult to react to unpredictable environments. The method is suitable for static or predictable complex environments.
On the other hand, the reactive control computes only the next state with cheaper computational costs. The resulting motions are not optimal and potentially get stuck in local minima. This method is suitable for unpredictable dynamic environments.